Computing systems have made significant contributions toward the advancement of modern society and are utilized in a number of applications to achieve advantageous results. Numerous devices, such as desktop personal computers (PCs), laptop PCs, tablet PCs, servers, work stations, distributed computing platforms, gaming consoles, netbooks, smart phones, and the like have facilitated increased productivity and reduced costs in communicating and analyzing data in most areas of entertainment, education, business, and science. One common aspect of computing systems is the connection of multiple devices, such as peripheral or client devices, to a host or server device. Typically, some sort of enumeration process is utilized to discover the peripheral and/or client devices coupled to a host or server device, the capabilities of the devices and/or the state of the devices.
The enumeration process takes longer and longer to complete the more devices that are coupled together and/or the more complex the interconnections are between the devices. As the topology becomes more complex the latency incurred by the enumeration process may increase beyond a desired or acceptable period. To limit the enumeration incurred latency, some protocols place restrictions on the number of devices that can be coupled together, and/or the complexity of interconnections between the devices. Accordingly, there is a need for techniques to maintain or reduce the enumeration latency while allowing complex topologies between multiple devices.